Systems, methods, and media for managing and sharing digital content and services

ABSTRACT

Methods, systems, and media for creating a layout of digital assets are provided. In some embodiments, the method comprises: presenting a layout of digital assets, wherein the layout of digital assets includes a plurality of elements; receiving a selection of a digital asset from a group of available digital assets to be included in the layout of digital assets; in response to receiving the selection of the digital asset, causing a representation of the digital asset to be presented in the layout of digital assets; causing an image that represents the layout of digital assets to be created, wherein the image is associated with a Uniform Resource Locator (URL); and in response to determining that the URL has been selected, causing the image to be presented.

CROSS REFERENCE TO RELATED APPLICATION

This application is a continuation-in-part of U.S. patent applicationSer. No. 16/181,039, filed Nov. 5, 2018, which is a continuation of U.S.patent application Ser. No. 14/526,233, filed Oct. 28, 2014, whichclaims the benefit of U.S. Provisional Patent Application No.61/896,346, filed Oct. 28, 2013, each of which is hereby incorporated byreference herein in its entirety.

TECHNICAL FIELD

The disclosed subject matter relates to methods, systems, and media forcreating a layout of digital content.

BACKGROUND

People are increasingly interested in creating and sharing digitalcontent and services, such as photos, videos, audio content, games,hyperlinks to Web sites, text, documents, video tele-conferences, 3Dviewports, transaction carts, phone calls, live streams, healthmonitoring, augmented reality sessions, security systems, social mediafeeds, and/or aggregators, etc. Furthermore, people are interested inpresenting multiple pieces of such content and services in one post thatreferences the multiple types of assets. For example, a person mightwant to create a post that contains multiple photos and videos from avacation, a link to a Web site describing the vacation location, and alink to another Web site listing hotel options at the vacation location.As another example, a person might want to integrate a live web-cam or adriving navigation service application into the post. As yet anotherexample, a person may want to make visibility of all or a portion ofthis information available to only select users. In some cases, it canbe useful for presented information to self-update over time. However,it can be difficult to easily create and manage posts with multipletypes of digital content and/or services.

Accordingly, it is desirable to provide new methods, systems, and mediafor creating a layout of digital content and services.

SUMMARY

Methods, systems, and media for creating a layout of digital assets areprovided. In accordance with some embodiments of the disclosed subjectmatter, a method for creating a layout of digital assets is provided,the method comprising: receiving, at a hardware processor, a userselection of a base form for the layout of digital assets; based on theuser selection of the base form, presenting, using the hardwareprocessor, the layout of digital assets in a layout portion of userinterface presented on a display, wherein the layout of digital assetsincludes a plurality of elements, and wherein each element correspondsto a region of the layout of digital assets, and wherein each elementcan be associated with a digital asset; receiving a selection of adigital asset from a group of available digital assets to be included inthe layout of digital assets; in response to receiving the selection ofthe digital asset, causing a representation of the digital asset to bepresented in the layout of digital assets; causing an image thatrepresents the layout of digital assets to be created, wherein the imageis associated with a Uniform Resource Locator (URL) that indicates alocation of the image; and in response to determining that the URL hasbeen selected on a user device, causing the image to be presented on theuser device.

In accordance with some embodiments of the disclosed subject matter, asystem for creating a layout of digital assets is provided, the systemcomprising: a memory; and a hardware processor that, when executingcomputer-executable instructions stored in the memory, is configured to:receive a user selection of a base form for the layout of digitalassets; based on the user selection of the base form, present the layoutof digital assets in a layout portion of user interface presented on adisplay, wherein the layout of digital assets includes a plurality ofelements, and wherein each element corresponds to a region of the layoutof digital assets, and wherein each element can be associated with adigital asset; receive a selection of a digital asset from a group ofavailable digital assets to be included in the layout of digital assets;in response to receiving the selection of the digital asset, cause arepresentation of the digital asset to be presented in the layout ofdigital assets; cause an image that represents the layout of digitalassets to be created, wherein the image is associated with a UniformResource Locator (URL) that indicates a location of the image; and inresponse to determining that the URL has been selected on a user device,cause the image to be presented on the user device.

In accordance with some embodiments of the disclosed subject matter,non-transitory computer-readable media containing computer executableinstructions that, when executed by a processor, cause the processor toperform a method for creating a layout of digital assets are provided,the method comprising: receiving a user selection of a base form for thelayout of digital assets; based on the user selection of the base form,presenting the layout of digital assets in a layout portion of userinterface presented on a display, wherein the layout of digital assetsincludes a plurality of elements, and wherein each element correspondsto a region of the layout of digital assets, and wherein each elementcan be associated with a digital asset; receiving a selection of adigital asset from a group of available digital assets to be included inthe layout of digital assets; in response to receiving the selection ofthe digital asset, causing a representation of the digital asset to bepresented in the layout of digital assets; causing an image thatrepresents the layout of digital assets to be created, wherein the imageis associated with a Uniform Resource Locator (URL) that indicates alocation of the image; and in response to determining that the URL hasbeen selected on a user device, causing the image to be presented on theuser device.

BRIEF DESCRIPTION OF THE DRAWINGS

Various objects, features, and advantages of the disclosed subjectmatter can be more fully appreciated with reference to the followingdetailed description of the disclosed subject matter when considered inconnection with the following drawings, in which like reference numeralsidentify like elements.

FIGS. 1A and 1B show examples of user interfaces for creating posts andfor overlaying titles on digital assets included in a post in accordancewith some embodiments of the disclosed subject matter.

FIG. 2 shows an example of a user interface for including a video and anadvertisement in a post in accordance with some embodiments of thedisclosed subject matter.

FIG. 3 shows an example of presenting a post in a Web page in accordancewith some embodiments of the disclosed subject matter.

FIG. 4 shows an example of a user interface for presenting transparentindicators which indicate multiple elements within a post in accordancewith some embodiments of the disclosed subject matter.

FIG. 5 shows an example of a user interface for allowing a retailer tocreate a post in accordance with some embodiments of the disclosedsubject matter.

FIG. 6 shows an example of a user interface for presenting a post withina dedicated application in accordance with some embodiments of thedisclosed subject matter.

FIG. 7 shows an example of a user interface for presenting an order of asequence of posts and for receiving user input indicating a re-orderingof the sequence of posts in accordance with some embodiments of thedisclosed subject matter.

FIG. 8 shows a schematic diagram of an illustrative system suitable forimplementation of mechanisms described herein for creating a layout ofdigital assets in accordance with some embodiments of the disclosedsubject matter.

FIG. 9 shows a detailed example of hardware that can be used in a serverand/or a user device of FIG. 8 in accordance with some embodiments ofthe disclosed subject matter.

FIG. 10 shows an example of a process for creating a post, providing thepost for sharing, and creating a new post containing at least part ofthe original post in response to a request in accordance with someembodiments of the disclosed subject matter.

FIG. 11A shows an example of a process for creating a new post inaccordance with some embodiments of the disclosed subject matter.

FIGS. 11B and 11C show examples of processes for receiving selections ofuser-created content and advertising content, respectively, to beincluded in a post in accordance with some embodiments of the disclosedsubject matter.

FIG. 12 shows an example of a user interface for presenting analyticsassociated with a post in accordance with some embodiments of thedisclosed subject matter.

FIG. 13 shows an example of a user interface for presenting a layout asa mezzanine object in a browser in connection with search, scripting,and/or recommendation actions.

DETAILED DESCRIPTION

Mechanisms (which can be systems, methods, and/or media) for creating alayout of digital content are provided.

In accordance with some embodiments, these mechanisms enable users tocreate, enrich, modify, share, curate, and/or copy data structures eachhaving a plurality of logical elements that can be used to representcontent and services that can be presented to a user. Each of these datastructures may be referred to herein as a “post.” In some embodiments,any suitable types of content or services (which can be referred toherein as “digital assets”) can be represented by an element of a post.For example, an element of a post can represent assets such as text(which can be for any suitable purpose, such as a story, a news piece, adescription, lyrics, a blog type entry, user comments (whether the useris the author or another person), log data, etc.), an image, a video,audio, an animation, a symbol, a hypertext link (e.g., a UniformResource Locator (URL)), a .pdf file, a link to a Web or applicationservice widget (e.g., a YouTube™ player, a Vimeo™ player, etc.) and/orany other suitable digital asset.

An example 100 of a post in accordance with some embodiments is shown inFIG. 1A. As illustrated, post 100 can include elements 102, 104, 106,108, 110, 112, 114, 116, and 118, and these elements can be arranged ina layout within the post. In some embodiments, these elements can behavelike compartments each having a specified shape and size. Although theseelements are each rectangular in the sample post, and the post isrectangular, any suitable shape can be used for the post and for each ofthe elements, in some embodiments. For example, an element within a postcan be a circle, a square, a rectangle, an ellipse, a trapezoid, anirregular shape, a 3-D perspective volume, and/or any other suitableshape. As another example, a post can have any suitable shape that isdefined by a combination of the shapes of its elements. Any suitablenumber of elements can be included in a post, in some embodiments.

As stated above, an element of a post can contain any suitable type ofcontent or service, in some embodiments. For example, as shown in FIG.1A, element 102 contains a graphic logo combined with text, element 104contains a map which is referenced as a URL, element 106 contains text,element 108 contains an image, element 110 contains a video, element 102contains a satellite photograph, element 114 contains another image,element 116 contains a link to a Web site, and element 118 contains atitle.

As another example, as shown in example post 150 of FIG. 1B, an elementof a post can include a corresponding title (e.g., title 154corresponding to element 152). A corresponding title can be associatedwith an element of a post in any suitable manner. For example, in someembodiments, the title can be overlaid on the element. Additionally oralternatively, in some embodiments, a title (e.g., title 156 of FIG. 1B)can be associated with two or more elements of a post, for example, byspanning a compartment containing the two or more elements. In someembodiments, title 154 and/or title 156 can be hidden from a userviewing post 150 until it is determined that a user has interacted withpost 150 and/or an element associated with title 154 and/or 156 (e.g.,by clicking on a post and/or an element, by tapping a portion of ascreen corresponding to a post and/or an element, and/or any othersuitable interaction input).

In some embodiments, the elements can contain the actual content to bepresented, a thumbnail of the content, a link to the content (e.g.,URL-hyperlink, pointer, IP address, any other suitable identifier,etc.), text representing the content, overlays that provide informationabout the content type and/or status of the content (e.g., an overlaycan indicate if an audio file is currently playing), and/or any othersuitable content or indicator of content. A link to content may link todirect assets, to Web files (HTML), or to service-type assets that canstream in a temporal fashion to the device displaying the post, in someembodiments.

The post can have any suitable characteristics associated with it, insome embodiments. For example, the post can have characteristicsincluding topic information, categorization information, authoridentification information, copyright notice information, securityinformation (e.g., encryption protocol identifiers, digital rightsmanagement information, digital signatures, authorized user lists orgroups and/or corresponding access controls (e.g., limits on who canread, view, save, copy, edit, share, delete, etc.), etc.), creation dateinformation, expiration information, post identification serial numbers,references to folders or associations to other digital list constructs,etc. Any one or more of these characteristics can be identified in ameta-tag associated with the post, and together these characteristicscan be referred-to as meta-information for the post, in someembodiments.

A post can be provided for any suitable purpose in accordance with someembodiments. For example, a post can be for personal use, for businessuse, for commercial use, for government use, for charitable use, forreligious use, and/or for any other suitable use. As a few moreparticular examples, a post can be used to show and describe highlightsof a vacation, to show a commercial offering (e.g., products or servicesfor sale), to provide entertainment (e.g., video content, book content,audio content, etc.), to provide information (e.g., from a news source,from an educational provider, as a tutorial, etc.), etc.

Each post can have a basic form that specifies one or morecharacteristics of the post and/or its elements, in some embodiments.For example, the basic form can specify geometries and relationalgeometries of one or more elements (e.g., visual referencecompartments), characteristics of one or more elements, etc. Forexample, the basic form of a post can define that the post will includea given number of elements, can define the shape, size, and location ofeach element, can define characteristics of such elements, etc. Suchcharacteristics can define any suitable aspects of the element(s), suchas what type of content (e.g., images, video, text, hyperlinks, etc.)can be included in each element, attribution associated with eachelement, copy protection or notices associated with each element,commercial nature of each element (indicating that the item representedby the element is for sale, for example), advertisement or promotionalstatus of each element, indication that an element is a live ornear-live media feed, and/or any other suitable aspects, in someembodiments.

In some embodiments, a user can interact with one or more elements of apost. For example, by clicking or tapping an element of a post, the usercan cause content associated with the element to be presented at alarger size. As another example, if the content of an element is videoor audio, clicking on the element can cause the video or audio to beginplaying. As yet another example, if the content of an element is a link,clicking on the element may cause a service in the form of a Web pagecorresponding to the link to be opened in a Web browser or “Viewer.” Asstill another example, in some embodiments, selecting a post and/or anelement within a post can cause a window or widget for receiving paymentinformation (e.g., credit card information, bank account information,PayPal™ account information, and/or any other suitable paymentinformation) from a user to appear. In instances in which a window orwidget for receiving payment information is presented, the window orwidget can further indicate whether payment is associated with an itemthat is for sale, an item that is being auctioned, a fundraiser and/or adonation to a particular cause, and/or any other suitable information.In some embodiments, a transaction or payment can be implemented usingany suitable transaction service. In some embodiments, a transactionassociated with a post and/or any elements of the post can be conductedusing any suitable technique(s), such as using blockchain or distributedledger-type surety systems. In some embodiments, a user can use storedvalue tokens, which may or may not be attached to real-world currency,to trade credits, points, and/or any other suitable unit of measure fortrade in association with a post and/or assets referenced and accessedtherein.

In accordance with some embodiments, advertising content can be providedin one or more elements of a post. For example, as shown in FIG. 2, apost 200 can include a video 202 and an advertisement 204. Additionallyor alternatively to providing advertising content in a separate elementfrom other, non-advertising content of a post, advertising content andnon-advertising content can be presented in the same element bypresenting the advertising content before, during, and/or after thepresentation of the non-advertising content, in some embodiments. Moreparticularly, for example, when presented before or afternon-advertising content, the advertising content may be exclusivelypresented, whereas when presented during the presentation of thenon-advertising content, the advertising content may be presentedalongside the non-advertising content, over the non-advertising content(e.g., as an overlay), as a break in the non-advertising content (e.g.,like a commercial break in a television program), etc.

In some embodiments, advertisements presented during a user's post maycause the advertiser to owe an advertising fee to the author. A playerpresenting the post or a server delivering the advertising content mayautomatically report the advertisement presentation to a server thattracks the presentation of advertisements so that the fees owed to theauthors can be tracked, in some embodiments.

A post, or a portion of the post, can be presented in any suitable spacecapable of presenting the post in some embodiments. For example, in someembodiments, a post, such as post 302, can be presented in a Web page,such as Web page 300, as shown in FIG. 3.

In some embodiments, the content of all elements of a post need not bevisible at the same time. For example, as shown in FIG. 4, a post 402 ona Web site 400 can include semi-transparent visual “bars” 404, 406, and408 (or any other suitable indicator, such as one or more overlay icons,border features, etc.) to indicate that the post has more than a singleelement, and that the content of the other element(s) can be presentedin response to a user clicking on the bar (or other indicator).

In some embodiments, elements of a post can be presented and interactedwith within a player, for example, in a Web browser. In someembodiments, the player can be opened (e.g., as a pop-up within adisplay) when an element in a post is selected. For example, a post maybe presented as shown in FIG. 1A, and then when any element in the postis selected, the player can be presented in a pop-up on the display. Insome embodiments, the player can allow the elements of a post to bepresented as items in a gallery, sequenced gallery, carousel, grid, etc.A viewer of such a gallery, sequenced gallery, carousel, grid, etc. canstep, swipe, pan, etc. through the items as they are presented. Byswiping, pressing a right arrow (button or icon), panning, etc., aviewer can then view a next piece of content associated with a nextelement of the post for viewing. In some embodiments, the individualitems of content corresponding to the different elements of the post canbe associated with different file types.

As mentioned above, in some embodiments, a post can be created by acompany to advertise its products or services. For example, as shown inFIG. 5, a post 502 can be created by a wine maker, distributor,retailer, or third-party, so that the post can be included in aretailer's Web page 500. This post can have any suitable securitycharacteristics so that the post cannot be altered by any party otherthan the wine maker (or those authorized by the wine maker), in someembodiments.

In some embodiments, a post can be presented in a dedicated applicationor Web page. For example, as shown in FIG. 6, a post 602 can bepresented in an application or Web page 600. Application or Web page 600can also include a play list 604 of available posts to be presented (andthis list may be filtered to only show related, trending, and/or anyother class of post), one or more advertisements 610, one or morecomment sections 608 for posting comments, one or more categoryselectors for selecting categories of posts, and/or any other suitablefeatures, in some embodiments.

In some embodiments, a post can be presented with analyticscorresponding to elements within the post. For example, as shown in FIG.12, a post 1200 can be presented with indicators of the numbers of viewscorresponding to individual elements of post 1200 and/or with indicatorsof the numbers of views associated with different geographicallocations.

As shown, post 1200 can include one or more elements (e.g., element1202), which can be presented with a number of views indicator (e.g.,number of views indicator 1204) in accordance with some embodiments.Number of views indicator 1204 can indicate a number of views associatedwith element 1202 over any suitable time period (e.g., a number of viewswithin the last hour, a number of views within the last day, and/or anyother suitable time period) and/or a total number of views. Additionallyor alternatively, in some embodiments, number of views indicator 1204can represent a number of views filtered with any other suitablecriteria (e.g., a number of views originating from a particulargeographic location, a number of views originating from a particulardevice, a number of views originating from users within a particulardemographic group, and/or any other suitable criteria). Note that, insome embodiments, some elements within a post can be presented withoutan associated number of views indicator, as shown in FIG. 12.

In some embodiments, post 1200 can include a map 1206, which can be usedto present one or more number of views indicators corresponding to oneor more locations of map 1206. Map 1206 can represent a geographicregion of any suitable size (e.g., a state, a country, a continent, ahemisphere, and/or any suitable combination of geographic regions).Furthermore, in some embodiments, the scope of the geographic region canbe adjusted to present a larger or smaller region, for example, byzooming in or zooming out within map 1206.

As shown in FIG. 12, map 1206 can include number of views indicators1208 and 1210, which can indicate numbers of views associated with thegeographic locations at which the indicator is presented. For example,as shown in FIG. 12, number of views indicator 1208 can represent anumber of views associated with Washington state. The number of viewsassociated with a particular geographic location can be determined usingany suitable technique or combination of techniques. For example, insome embodiments, a geographic location associated with a particularview and/or impression of a post and/or of an element can be determinedbased on an Internet Protocol (IP) address from which the vieworiginated, and views from the determined geographic location can betallied over any suitable time period.

Number of views indicators 1208 and 1210 can have any suitableappearance. For example, in some embodiments, a color of an indicatorcan be associated with a magnitude of a number of views. As a moreparticular example, as shown in FIG. 12, number of views indicator 1210can be presented in a different manner (e.g., a different color, adifferent size, and/or any other suitable difference) relative to theother indicators on map 1206 to indicate that the location(s) associatedwith number of views indicator 1210 produced a larger number of viewsrelative to other locations. Note that the number of views associatedwith indicators 1208 and/or 1210 can be determined based on any suitablecriteria. For example, in some embodiments, the number of views canrepresent a number of views of a particular element contained in post1200. As another example, in some embodiments, the number of views canrepresent a number of views summed over all of the elements of post1200. As yet another example, in some embodiments, the number of viewscan represent a number of views of a particular element and/or all ofthe elements over a particular time period.

Although not shown in FIG. 12, in some embodiments, analytic informationcan be presented with respect to time. For example, in some embodiments,an indication of a number of views associated with a post and/or acompartment can be presented in a graph showing the number of views as afunction of time. In some embodiments, information indicating the numberof views can be filtered based on both times associated with the viewsas well as geographic information associated with the views. Forexample, in some embodiments, a graph indicating views originating froma particular location as a function of time can be presented.

Note that, in some embodiments, presentation of post 1200, whichcontains analytics corresponding to a post and/or elements within thepost, can be restricted to one or more particular users. For example, insome embodiments, viewing analytics can require entry of a password.

In some embodiments, content from one or more posts can be caused to bepresented in a predetermined order. For example, the content from theelements of a single post can be caused to be presented in a givenorder. As another example, the content of multiple posts can be causedto be presented in a given order.

Any suitable mechanism can be provided in some embodiments forspecifying the order in which content from the elements of a post, orfrom multiple posts, is to be presented. For example, as shown in FIG.7, a user interface 700 can be presented for showing the order ofpresentation of a series of posts (represented by post icons 706) for aneducational course. As shown in this example, a course can be made up ofan introduction and multiple lessons 702. Within the introduction andeach lesson of this example there can be one or more lesson pages 704,each represented by a post icon 706. In some embodiments, a user canre-order the posts in the course by dragging the post icons 706 to a newposition and dropping them at a desired location.

In some embodiments, such an interface can present the posts in adynamic visual carousel, or cover-flow, or other visual portrayal of oneor more sequences of posts.

In some embodiments, such an interface can additionally or alternativelybe used to graphically represent a syllabus for a course.

An interface like that of FIG. 7 can be used for other purposes as well,in some embodiments. For example, such an interface can be used torepresent a table of contents for a book, “chapters” or segments of amovie, episodes of a television series, acts of a play, etc.

Turning to FIG. 8, an example 800 of hardware that can be used inaccordance with some embodiments is shown. In some embodiments, hardware800 can be used to present the user interfaces of FIGS. 1-7 and toreceive user responses thereto, and to execute the processes of FIGS.10, 11A, 11B, and 11C, as described further below.

As illustrated, the hardware can include one or more content processingservers 802, one or more content storage servers 804, one or more thirdparty servers 806, a communication network 808, and one or more userdevices 810, such as a mobile phone 812, a tablet computer 814, and/or alaptop computer 816, in some embodiments.

Content processing server(s) 802 can be any suitable servers forprocessing content for use in connection with the posts, in someembodiments. For example, in some embodiments, content processingserver(s) 802 can be any suitable servers capable of encoding content,transcoding content, converting content, compressing content, resizingcontent, ripping content, changing content resolution, cropping content,zooming content, panning content, re-coloring content, perform thumbnailcreation on content, backing-up content, compressing content, and/orperform any other suitable processing on the content. In someembodiments, content processing server(s) can additionally provision aservice-type asset, such as a 3D asset visualizer. In some embodiments,a service-type asset can be accessed via any suitable ApplicationProgramming Interface (API). In some embodiments, an API can provide anoverlay image (e.g., a still image, and/or any other suitable image) forreference in an element. In some embodiments, content processingserver(s) 802 can be omitted. In some embodiments, content canadditionally or alternatively be processed by a hardware processor onuser device 810.

Content storage server(s) 804 can be any suitable servers for storingcontent and for delivering the content to a user device 810 in someembodiments. For example, content storage server(s) 804 can be one ormore servers that stream content to a user device 810 via communicationnetwork 808. Content provided by content storage server(s) 804 can beany suitable content such as video content, audio content, televisionprograms, movies, cartoons, music, sound effects, audiobooks, streaminglive content (e.g., a streaming radio show, a live concert, etc.), etc.,in some embodiments. In some embodiments, content storage server(s) 804can be omitted. In some embodiments, content can additionally oralternatively be stored and/or delivered from memory on user device 810.

Third-party server 806 can be any suitable server for storing contentand/or services from a third party, such as an advertiser, a Web site,an API, etc., in some embodiments. These assets may be accessible by auser or a post for creation of the post or presentation of the post, insome embodiments.

Communication network 808 can be any suitable combination of one or morewired and/or wireless networks in some embodiments. For example,communication network 808 can include any one or more of the Internet, amobile data network, a satellite network, a local area network, a widearea network, a telephone network, a cable television network, a WiFinetwork, a WiMax network, and/or any other suitable communicationnetwork.

User devices 810 can include any suitable one or more user devices forcreating, sharing, presenting, copying, and/or performing any othersuitable function with respect to a post, in some embodiments. Forexample, in some embodiments, user devices 810 can include mobiledevices, such as a mobile phone 812, a tablet computer 814, a laptopcomputer 816, a vehicle (e.g., car, boat, airplane, etc.) entertainmentsystem, a portable media player, etc. Although not shown in FIG. 8, asanother example, in some embodiments, user devices 810 can includenon-mobile devices, such as a desktop computer, a set-top box, a smarttelevision, a streaming media player, a game console, etc.

Although content processing server(s) 802, content storage server(s)804, third party server(s) 806 are illustrated as separate devices,these devices can be combined into one or more devices in someembodiments.

Although three user devices 812, 814, and 816 are shown in FIG. 8 toavoid over-complicating the figure, any suitable number (including none)of each of these devices, and any suitable types of these devices, canbe used in some embodiments.

In some embodiments, a user of a user device, such as user devices 812,814, and 816, can select that a presentation of content from an elementof a post, or a presentation of the entire post, be presented on anotherof devices 812, 814, or 816, or another device not shown in FIG. 8(e.g., such as a large television), so that the content or post can beviewed on a larger screen or a different screen and/or by my multiplepeople.

Content processing server(s) 802, content storage server(s) 804, thirdparty server(s) 806, and user devices 810 can be implemented using anysuitable hardware in some embodiments. For example, in some embodiments,devices 802, 804, 806, and 810 can be implemented using any suitablegeneral-purpose computer or special purpose computer. For example,mobile phone 812 may be implemented using a special purpose computer.Any such general-purpose computer or special purpose computer caninclude any suitable hardware, in some embodiments. For example, asillustrated in example hardware 900 of FIG. 9, such hardware can includea hardware processor 902, memory and/or storage 904, an input devicecontroller 906, an input device 908, display/audio drivers 910, displayand audio output circuitry 912, communication interface(s) 914, anantenna 916, and a bus 918.

Hardware processor 902 can include any suitable hardware processor, suchas a microprocessor, a micro-controller, a digital signal processor,dedicated logic, and/or any other suitable circuitry for controlling thefunctioning of a general-purpose computer or a special purpose computerin some embodiments.

Memory and/or storage 904 can be any suitable memory and/or storage forstoring programs, data, content, posts, post and/or elementcharacteristics, etc. in some embodiments. For example, memory and/orstorage 904 can include random access memory, read-only memory, flashmemory, hard disk storage, optical media, etc.

Input device controller 906 can be any suitable circuitry forcontrolling and receiving input from one or more input devices 908 insome embodiments. For example, input device controller 906 can becircuitry for receiving input from a touch screen, from one or morebuttons, from a voice recognition circuit, from a microphone, from acamera, from an optical sensor, from an accelerometer, from atemperature sensor, from a near field sensor, etc.

Display/audio drivers 910 can be any suitable circuitry for controllingand driving output to one or more display/audio output circuitries 912in some embodiments. For example, display/audio drivers 910 can becircuitry for driving an LCD display, a speaker, an LED, etc.

Communication interface(s) 914 can be any suitable circuitry forinterfacing with one or more communication networks, such as network 808as shown in FIG. 8, in some embodiments. For example, interface(s) 914can include network interface card circuitry, wireless communicationcircuitry, etc.

Antenna 916 can be any suitable one or more antennas for wirelesslycommunicating with a communication network in some embodiments. In someembodiments, antenna 916 can be omitted when not needed.

Bus 918 can be any suitable mechanism for communicating between two ormore components 902, 904, 906, 910, and 914 in some embodiments.

Any other suitable components can be included in hardware 900, and anyun-needed components of hardware 900 can be omitted, in accordance withsome embodiments.

Turning to FIG. 10, an example 1000 of a process for creating a post,providing the post for sharing, receiving a request related to the post,providing content for the post, and copying at least part of a post andcreating a new post in accordance with some embodiments is shown. Thisprocess and process 1100 (described below in connection with FIGS. 11A,11B, and 11C) can be performed by any suitable hardware, in someembodiments. For example, in some embodiments, this process can beperformed by one or more hardware processors on one or more of a userdevice and/or a server as described herein.

As illustrated, at 1002, process 1000 can create a post. This post canbe created in any suitable manner. For example, as described furtherbelow in connection with FIGS. 11A, 11B, and 11C, a process 1100 can beused to create the post as part of 1002.

Next, at 1004, process 1000 can provide the post for sharing, uploading,emailing, etc. In accordance with some embodiments, the post can beprovided to and/or shared with any suitable device, application,program, storage, communication channels, etc. Providing a post forsharing can include transferring the post (or a post identifier) betweenapplications on a user device and/or a server, transmitting the post (ora post identifier) over a communication network via a communicationinterface, etc., in some embodiments. In some embodiments, the postidentifier can include a representation of the post as a single image.Furthermore, in some embodiments, the single image representing the postcan be associated with a URL such that, in response to determining thatthe URL has been selected, the post represented by the single image canbe presented (e.g., by redirecting a browser to a page hosting the post,by opening a new window containing the post, and/or in any othersuitable manner).

In some embodiments, in order to facilitate sharing of a post, the postcan be represented by thumbnail images combined with underlying links.For example, such a post can be represented using java script and/orhyper-text markup language (HTML). In this way, a post will likely bepresentable on any java script and/or HTML compatible platform, such asa Web browser. For example, in some embodiments, when a user clicks on athumbnail in an element of the post, the link underlying that thumbnailimage can cause the content for that element to be retrieved andpresented to the user.

At 1006, process 1000 can next receive a request related to the post.Any suitable requests can be received, in some embodiments. For example,in some embodiments, the request can be a request generated in responseto a user clicking on a thumbnail image in a shared post and therebyfollowing the underlying link. As another example, in some embodiments,the request can be a request to copy the post.

Process can determine at 1008 whether the request is to provide contentor copy the post. If the request is a request to provide content for thepost, process 1000 can branch to 1010 and retrieve the requestedcontent. This content can be retrieved in any suitable manner and fromany suitable location, in some embodiments. For example, in someembodiments, this content can be retrieved from storage on a contentstorage server such as content storage server 804 of FIG. 8. Next,process 1000 can provide the content in response to the request at 1012.The content can be provided in any suitable manner, in some embodiments.For example, in some embodiments, the content can be provided as part ofa Web page that is provided to the requesting process. Step 1012 mayinclude the option for the user to “dismiss,” or remove the content fromview, thus returning to an overall post view, in some embodiments.Process 1000 can then loop back to 1006.

If it is determined at 1008 that the request is a request to copy thepost, at 1014, process 1000 can determine the amount of a post to becopied. This determination can be made in any suitable manner, in someembodiments. For example, after a user indicates that the user wants tocopy a post (e.g., by selecting “copy” from a context menu whileright-clicking on a post), a pop-up menu can be presented asking theuser if the user wants to copy the entire post, only a portion of thepost, only the base form of the post, or some combination thereof. Asanother example, in instances in which a user indicates that the userwants to copy a post created by another user, process 1000 can determinewhich portions of the post, if any, the user has permission to copy(e.g., by verifying permissions associated with the post to be copied,and/or using any other suitable technique). Next, at 1016, process 1000can create a partially completed post (or a fully completed post if itis determined that the entire post is to be copied). This can beperformed in any suitable manner, in some embodiments. For example,process 1000 can receive selections of portions of the post to be copiedand replicate those portions in a new post. After the partiallycompleted post has been created, process 1000 can finish creating thepost and then loop back to 1004. The process can finish creating thepost in any suitable manner, in some embodiments. For example, theprocess can finish creating the post by branching to 1128 of FIG. 11B(which is described further below).

In some embodiments, when creating a copy of a post, process 1000 mayskip copying the content for the elements of the post being copied andinstead provide links to that content. In this way, duplicate copies ofcontent need not be made.

In some embodiments, the characteristics for a post created from a copycan be assigned multiple layers of attribution. These layers can be usedfor sharing and affiliate recognition in some embodiments.

Turning to FIG. 11A, an example of a process 1100 for creating (or“authoring”) a new post in accordance with some embodiments isillustrated. As shown, at 1102, process 1100 can receive an indicationthat a user wishes to create a new post. This indication can be receivedin any suitable manner from any suitable source, in some embodiments.For example, this indication can be received as a menu selection in anapplication on a user device.

Next, at 1104, process 1100 can optionally ask the user to specify howthe basic form of the post is to be created. The basic form of the postcan be created in any suitable manner, in some embodiments. For example,in some embodiments, the basic form of the post can be created from atemplate. As another example, in some embodiments, the basic form of thepost can be created from a layout designed separately, or interactivelyby the user. Process 1100 can then receive at 1106 a user specificationof the basic form of the post that is consistent with the user'sspecification of how the user wants to specify the basic form of thepost, in some embodiments.

For example, when receiving a specification of the basic form of a postfrom a template from a user, process 1100 can receive a selection of thetemplate from the user in any suitable manner. More particularly, forexample, the process can receive the user's selection of a template froma menu of templates. This menu can organize templates into categories,subcategories, etc. As another more particular example, the process canreceive the user's selection of a template from a set of icons showingan illustration of the basic form of the template.

As another example, when receiving a specification of the basic form ofa post from a layout designed by a user, process 1100 can receive fromthe user information defining the layout using basic graphic elementssuch as squares, rectangles, triangles, circles, lines, 3D volumes,and/or any other suitable graphic elements. The process can enable theuser to select such elements and arrange them in a design space on adisplay, in some embodiments. Then process 1100 can then allow the userto specify any suitable characteristics associated with differentportions of the basic form as further defined herein—colors, visualeffects, security, source information, etc., in some embodiments.

At 1106, process 1100 can also receive from the user characteristics ofthe post. Any suitable characteristics of the post can be received insome embodiments. For example, characteristics can include a topic ofthe post, an author of the post, security associated with the post,meta-tags or meta-information associated with the post, user groupassociations for the post, collection associations for the post,security levels for the post, business or enterprise preferences for thepost, permissions indicating which elements of a post can be copied in apost created by another user, and/or any other suitable characteristicsof the post.

After a user has specified the basic form of a post and characteristicsof the post, an element of the post can be selected as to be populatedwith content at 1108. The element can be selected in any suitablemanner, in some embodiments. For example, an element of the post can beselected based on the user clicking (or double-clicking, tapping,double-tapping, etc.) on the element in a display of the basic form ofthe post. As another example, an element of the post can beautomatically selected based upon it being the first element of thebasic form of the post that was created, based upon it being in acertain position in the post (e.g., top left), etc. Note that, in someembodiments, the element can be selected automatically (e.g., based onan algorithm). For example, in some embodiments, the algorithm canselect an element randomly, can select an element corresponding to aparticular area of the post (e.g., the top-most element, the left-mostelement, and/or any other particular area), and/or based on any othersuitable criteria.

Then, at 1110, process 1100 can receive a selection of the manner inwhich content for the element of the post will be specified. Thisselection can be received in any suitable manner, in some embodiments.For example, in some embodiments, the selection can be received from auser selection of a pop-up menu, a context menu, etc. At 1112, process1100 can then branch based on the user selection of the manner in whichcontent for the element of the post will be specified.

For example, if process 1100 receives a selection that the content willbe user-created, process 1100 can branch to A of FIG. 11B. As anotherexample, if process 1100 receives a selection that the content will beselected from pre-existing, non-advertising content, process 1100 canbranch to B of FIG. 11B. As yet another example, if process 1100receives a selection that the content will be selected frompre-existing, advertising content, process 1100 can branch to C of FIG.11C.

Turning to FIG. 11B, if process 1100 receives a selection that thecontent will be user-created, at 1114, the process can next presentcontent capture options to the user and receive a selection of one ofthose options. Any suitable capture options can be presented, and theseoptions can be presented and selected in any suitable manner, in someembodiments. For example, options to capture audio, video, images,gestures, handwriting, drawings, geo-location, etc. can be presented,and these options can be presented as icons in a pop-up menu. A user canthen select one of these options by clicking or tapping on the option,in some embodiments.

Based on the option selected at 1114, process 1100 can next capturecontent at 1116. This content can be captured in any suitable mannerusing any suitable sensor (e.g., such as an image sensor, a videosensor, an audio sensor, a gesture sensor, a handwriting sensor, adrawing sensor, a location sensor, etc.), in some embodiments. In someembodiments, process 1100 may enable a user to preview captured contentand indicate whether the content is suitable or desirable. In the eventthat a capture is unsuitable or undesirable to the user, process 1100may enable new content to be captured and used instead, in someembodiments.

As mentioned above, if it is determined at 1112 that the content to bespecified is pre-existing, non-advertising content, then process 1100can receive a selection of such content at 1118. Process 1100 canreceive a selection of existing content in any suitable manner, in someembodiments. For example, in some embodiments, the process can receive aselection of existing content at 1118 by presenting a mechanism forselecting existing content to the user and allowing the user to selectcontent presented via that mechanism. Any suitable mechanism can be usedin some embodiments. For example, in some embodiments, a user interfacefor selecting files (e.g., image files, video files, audio files,documents, and/or any other suitable files) on a user device can beprovided. As a more particular example, in some embodiments, the userinterface can allow for selection of files of any suitable type andassociated with any suitable entity, such as Vimeo™ videos, Microsoft™Office™ files (e.g., Word™, Excel™, Powerpoint™, and/or any othersuitable file types), Apple™ iWork™ files (e.g., Pages™, Numbers™,Keynote™, and/or any other suitable file type), and/or any othersuitable type of file. As another example, a Web browser can be providedfor finding and selecting content available on the Internet or any othersuitable communication network. Any suitable content available on theInternet or other suitable communication network can be selected in someembodiments. For example, content can be an entire Web page or a portionof a Web page (e.g., the portion can be one or more images, pieces oftext, videos, pieces of audio, animations, characters, symbols, and/orany other suitable content on the Web page). As yet another example,content can be one or more files stored in any suitable storage on theInternet or other suitable communication network. As still anotherexample, content can be one or more files and/or links to files from anonline retailer, a social networking site, a search engine, and/or anyother suitable Web site. As a more particular example, content can be alink to an iTunes U™ course, a link to a Dropbox™ file, and/or any othersuitable link and/or API or file.

In some embodiments, the received selection of content can includeinteractive content and/or services. For example, in some embodiments,the content can include a link to a phone number and/or a link to ane-mail address, and selection of the link can cause the associated phonenumber to be called and/or an e-mail message addressed to the e-mailaddress to be created and/or opened. As another example, in someembodiments, the asset can include a service associated with an onlinemeeting, such as Web conference, a video player streaming live videocontent, an interactive game session, a chat room, an instant messengerchat, an interactive writing and/or drawing pad, and/or any othersuitable content associated with an online meeting. In some suchembodiments, the content can include a link to the online meeting, andselection of the link can cause a window associated with the onlinemeeting to be opened. As yet another example, in some embodiments, thecontent can include a recording of digital events, such as movement of amouse, selection of menus, and/or any other suitable digital events. Asstill another example, in some embodiments, the content can include ascript, which can be executed, for example, when the post containing thescript is first displayed, when a compartment containing the script isinteracted with, and/or at any other suitable time.

In some embodiments, to select an asset, process 1100 can receive theasset when it is determined that a user has dragged an icon associatedwith the asset into a post and/or a compartment in which the content isto be presented. The icon can be dragged in any suitable manner (e.g.,by a mouse, by a finger on a touchscreen, and/or any other suitabletechnique). In some embodiments, any suitable technology can be used toassociate the dragged icon and the post and/or compartment into whichthe icon is dragged (e.g., Object Linking and Embedding, or “OLE,”and/or any other suitable technology). Upon receiving the dragged icon,the associated asset can be uploaded, transcoded, and processed (e.g., athumbnail representing the content can be created, the content can becompressed, and/or any other suitable processing) in any suitablemanner. In instances where a dragged icon represents a file and/or anyother type of content that is stored in storage on a network, theInternet, or an intranet, a pointer to the content (e.g., a URL, and/orany other suitable type of pointer to the content) can be associatedwith the post and/or the compartment to which the icon was dragged.

In some embodiments, to select an asset, whether stored locally, on theInternet, or on any other suitable communication network, process 1100may receive a user specified identifier of a topic, subject, date, time,source, Uniform Resource Locator (URL), search criteria, group or typeassociations, recent geo-location data, or other identifier of thecontent, in some embodiments. This identifier may be received in anysuitable manner, such as from a menu, from direct input (e.g., using akeyboard, voice recognition, etc.), based on frequently selectedidentifiers, based on a topic of the post that has been previouslyspecified (e.g., as in the case of a meta-tag), etc., in someembodiments. Based on the specified identifier, process 1100 may thenautomatically identify relevant content and present that content to theuser, in some embodiments. For example, process 1100 may retrieve allimages from a Web page corresponding to a URL selected by a user andpresent those images to the user for selection as content for theselected element of the post. As another example, in some embodiments,process 1100 can retrieve results from a search query based on thespecified identifier and present the retrieved results to the user. Insome such embodiments, a search engine API can be used to submit a queryto and retrieve any suitable search results from any suitable searchengine or search engine interface (e.g., Google™ Images, YouTube™videos, and/or any other suitable search results).

In the case of a user selecting a URL or Web page for inclusion as a“Link” type element, the selecting may include analyzing the page forimages, and presenting the user with those images so that the user mayselect one of the images for use as the link thumbnail, in someembodiments. Additionally, a user may be given the option to “capture”or screen-grab an image of the entire Web page, for use as the thumbnailfor that element, in some embodiments.

In some embodiments, process 1100 can receive an asset automatically,that is, without user input. For example, in some embodiments, process1100 can receive an asset when it is determined that a particular eventhas occurred. As a more particular example, in some embodiments, process1100 can receive an asset when it is determined that an internalcalendar and/or clock indicate a particular date and/or time. As anothermore particular example, in some embodiments, process 1100 can receivean asset when it is determined that an event specified on a calendar isoccurring and/or has occurred. As a specific example, process 1100 canreceive video content associated with a Web conference when it isdetermined that the Web conference is occurring and/or has ended.

Process 1100 can next retrieve the selected content at 1120. Thisprocess can be retrieved in any suitable manner, in some embodiments.For example, in some embodiments this process can be retrieved bydownloading the asset from a suitable storage device (e.g., such as oneor more of servers 804 and 806 of FIG. 8) on the Internet or any othersuitable communication network.

With some assets, it may be necessary or desirable to perform processingon the asset to improve some aspect of the content, to improve themanner in which it is transmitted, to improve the manner in which it isdisplayed, and/or for any other suitable purpose, in some embodiments.For example, in some embodiment, process 1100 can encode, transcode,convert, compresses, resize, rip, change resolution, crop, zoom, pan,re-color, perform thumbnail creation, apply visual or audio effects,receive a pre-made thumbnail image, access an API service, and/orperform any other suitable processing on the asset. Such processing canbe performed for any suitable effect in some embodiments. For example,in some embodiments, this processing can be performed such that itimproves performance when the asset is transmitted over a communicationnetwork (e.g., due to file size, file format, etc.). As another example,in some embodiments, this processing can be performing such that itimproves a presentation of the asset as part of the post (e.g., due toimage/video size, image/video shape, image/video/audio resolution,image/video zoom, etc.). As a more particular example, in someembodiments, the processing can create a thumbnail of video or imagecontent so that the thumbnail can be presented in the post. As yetanother example, in some embodiments, the processing can includeextracting a location associated with the content (e.g., a placeassociated with creation of the content, a place associated with uploadof the content, and/or any other suitable location information). In suchembodiments, location information can be stored in any suitable format(e.g., latitude and/or longitude information, time zone information, aname of a place, and/or any other suitable information). In someembodiments, the processing can be performed based on a user device onwhich the post and/or an element associated with the post is to bepresented. For example, in some embodiments, dimensions of an imageassociated with the post can be resized based on a display sizeassociated with the user device that is to present the image.

In the case of files being directly selected, either from a localstorage location, or from a network or Web-based location, someembodiments can automatically detect the type of file selected, andprocess the content accordingly. For example, if the user selects an.mp3 audio file, then that content element can be processed withappropriate encoding, transcoding, etc. to facilitate subsequentpresentation with thumbnail or overlay graphic in an element of a post.If the file selected is a .pdf, then other suitable processing can beapplied. In some embodiments, a thumbnail or overlay graphic associatedwith the content can indicate the detected file type.

The processing of content may include commercial or transactionfunctionality, including representing an item or represented item as“for sale” providing one or more options for a user to add the item orthe represented item to a virtual shopping cart for subsequent purchase,and providing an interface for the user to purchase the item or therepresented item as in the case of retail or wholesale commerce, in someembodiments. For example, this processing may include the preparation ofa file for digital rights management, as in the case of a song, orvideo, or movie, or eBook for sale, and it may optionally include theestablishing of an affiliate identifier, so the author is paid a shareof revenue or set fee, or other commission, if a viewer purchases theitem. The affiliate identifier may then be used to track volume ofsales, times of sales, conditions of sales, for purposes of commercialuse, in some embodiments.

After the content has been retrieved at 1120 or captured at 1116,process 1100 can determine whether processing is to be performed on thecontent at 1122. The determination can be made on any suitable basis,criterion, etc. For example, the determination can be made based onwhether the content can be properly presented in a post, or if thecontent will have commercial or transaction functionality within thepost.

If it is determined at 1122 that the content is to be processed, process1100 can perform any suitable processing (as described above) on thecontent at 1124. This processing can be performed on any suitabledevice. For example, in some embodiments, this processing can beperformed on content processing server 802 and/or user device 810 ofFIG. 8.

After performing the processing on the content at 1124, or afterdetermining at 1122 that no processing is to be performed on thecontent, process 1100 can next store the content (whether processed ornot) for subsequent use in a post at 1126. The content can be stored inany suitable manner and on any suitable one or more devices, in someembodiments. For example, in some embodiments, the content can be storedon a user device 810 of FIG. 8 for subsequent presentation on thatdevice. As another example, in some embodiments, the content can bestored on one or more content storage servers 804 of FIG. 8 forsubsequent streaming to one or more user devices. As yet anotherexample, in some embodiments, a thumbnail that is generated at 1124 canbe stored on a user device for display on that device, and the remainder(or some other part) of the content (whether processed or not) and/orthe thumbnail can be stored one or more servers for storage. In someembodiments, the act of storing content on one or more of the userdevice and the server(s) may include storing the content locally (e.g.,when process 1100 is being performed on the user device or server(s)) orcausing another device to store the content (e.g., when process 1100 isnot being performed on the user device or server(s)) by sending anysuitable instructions or requests to the other device.

Process 1100 can then determine at 1128 whether there are any one ormore elements of the post for which content needs to be selected. Thisdetermination can be made in any suitable manner, in some embodiments.For example, in some embodiments, this determination can be made bydetermining whether all user-defined content elements in a template fora basic form of the post have been specified.

If it is determined at 1128 that there are more elements, then process1100 can select the next element at 1130 and then loop back to 1110. Theselection made at 1130 can be made in any suitable manner, in someembodiments. For example, an element of the post can be selected basedon the user clicking (or double-clicking, tapping, double-tapping, etc.)on the element in a display of the basic form of the post. As anotherexample, an element of the post can be automatically selected based uponit being the next element of the basic form of the post that wascreated, based upon it being in a next position in a sequence ofpositions in the post (e.g., next to the right), etc.

As can be appreciated, a user may choose to select a variety of pieces,and types of pieces, of content to present in a post in someembodiments. For example, for a post related to the Missouri River, inone element of a post, a user may select (e.g., import) locally storedimages taken from a trip to the river with the user's family. In anotherelement of the post, the user may select a Web page from Wikipedia™ thathas facts about the Missouri River. Any other suitable pieces of contentcan be presented in one or more other elements of the post.

As stated above, if it is determined at 1112 that the content for anelement of a post is going to be pre-existing, advertising content,process 1100 can proceed from 1112 of FIG. 11A to 1132 of FIG. 11C. Asshown in FIG. 11C, at 1132, process 1100 can determine whether thepre-existing, advertising content is to be manually or automaticallyselected. This determination can be made in any suitable manner. Forexample, in some embodiments, this determination can be made byreceiving a user selection of an automatic option or a manual optionfrom a pop-up menu that is presented to the user. If it is determinedthat the pre-existing, advertising content will be selected manually,process 1100 can branch at 1134 to 1136. Otherwise, process 1100 canbranch at 1134 to 1140.

At 1140, process 1100 can receive a user selection of advertisingcontent. Process 1100 can receive this selection in any suitable manner,in some embodiments. For example, in some embodiments, the process canreceive a selection of advertising content at 1140 by presenting amechanism for selecting advertising existing content to the user andallowing the user to select advertising content presented via thatmechanism. Any suitable mechanism can be used in some embodiments. Forexample, in some embodiments, a user interface for selecting advertisingcontent files on a user device can be provided. As another example, aWeb browser can be provided for finding and selecting advertisingcontent available on the Internet or any other suitable communicationnetwork. Any suitable advertising content available on the Internet orother suitable communication network can be selected in someembodiments. For example, content can be one or more files stored in anysuitable storage (such as server(s) 806 of FIG. 8) on the Internet orother suitable communication network. This advertising content can becreated in any suitable manner, in some embodiments. For example, thisadvertising content can be created using known Internet advertisementmethods.

With some advertising content, it may be necessary or desirable toperform processing on the advertising content to improve some aspect ofthe content, to improve the manner in which it is transmitted, toimprove the manner in which it is displayed, and/or for any othersuitable purpose, in some embodiments. For example, in some embodiment,process 1100 can encode, transcode, convert, compresses, resize, rip,change resolution, crop, zoom, pan, re-color, perform thumbnailcreation, and/or perform any other suitable processing on theadvertising content. Such processing can be performed for any suitableeffect in some embodiments. For example, in some embodiments, thisprocessing can be performed such that it improves performance when thecontent is transmitted over a communication network (e.g., due to filesize, file format, etc.). As another example, in some embodiments, thisprocessing can be performing such that it improves a presentation of theadvertising content as part of the post (e.g., due to image/video size,image/video shape, image/video/audio resolution, image/video zoom,etc.). As a more particular example, in some embodiments, the processingcan create a thumbnail of video or image advertising content so that thethumbnail can be presented in the post.

After the advertising asset has been selected at 1136, process 1100 candetermine whether processing is to be performed on the content at 1138.The determination can be made on any suitable basis, criterion, etc., insome embodiments. For example, the determination can be made based onwhether the advertising content can be properly presented in a post.

If it is determined at 1138 that the asset is to be processed, process1100 can perform any suitable processing (as described above) on thecontent at 1140. For example, in some embodiments, this processing canbe performed on content processing server 802 and/or user device 810 ofFIG. 8.

After performing the processing on the asset at 1140, or afterdetermining at 1138 that no processing is to be performed on the asset,process 1100 can next store the content (whether processed or not) forsubsequent use in a post at 1142. The advertising asset can be stored inany suitable manner and on any suitable one or more devices, in someembodiments. For example, in some embodiments, the advertising contentcan be stored on a user device 810 of FIG. 8 for subsequent presentationon that device. As another example, in some embodiments, the advertisingcontent can be stored on one or more content storage servers 804 of FIG.8 for subsequent streaming to one or more user devices. As yet anotherexample, in some embodiments, a thumbnail that is generated at 1140 canbe stored on a user device for display on that device, and the remainder(or some other part) of the content (whether processed or not) and/orthe thumbnail can be stored one or more servers for storage. The act ofstoring advertising content on one or more of the user device and theserver(s) may include storing the content locally (e.g., when process1100 is being performed on the user device or server(s)) or causinganother device to store the content (e.g., when process 1100 is notbeing performed on the user device or server(s)) by sending any suitableinstructions or requests to the other device, in some embodiments.

As stated above, if it is determined at 1132 that the pre-existing,advertising content is to be selected automatically, process 1100 canbranch at 1134 to 1144 at which the process can determine whether theadvertising content is to be statically or dynamically assigned.Statically assigned advertising content can be selected during thecreation of a post and remain with the post until a user chooses tochange the advertising content, and dynamically assigned advertisingcontent can be automatically selected at the time of presentation basedon any suitable advertising criteria, in some embodiments. Thedetermination of whether the advertising content is to be statically ordynamically assigned can be made in any suitable manner, in someembodiments. For example, in some embodiments, this determination can bemade by receiving a user selection of a static option or a dynamicoption from a pop-up menu that is presented to the user.

If it is determined that the pre-existing, advertising content will bestatically assigned, process 1100 can branch at 1146 to 1148 at whichthe process can automatically select the advertising content. Thisselection can be made in any suitable manner, in some embodiments. Forexample, this selection can be made based on meta-tags associated with apost, based on post or element characteristics, based on user-selectedcontent in a post, based on an auction among advertisers for the space,etc. After the selection has been made at 1148, process 1100 can proceedto 1138 to determine whether to process the content, to 1140 to processthe content based on the determination at 1138, and to 1142 to store thecontent, all as described above.

Otherwise, if it is determined that the pre-existing, advertisingcontent will be dynamically assigned, process 1100 can branch at 1146 to1150 at which the process can set advertising criteria for the element.Any suitable advertising criteria can be set in some embodiments. Forexample, the criteria can specify a topic of the advertisement, allowedcompanies for the advertisement, disallowed companies for theadvertisement, minimum revenue that is to be given to the author of thepost for presentation of the advertisement, a manner of selecting whichadvertisement will be dynamically selected for the advertisement (e.g.,a presentation-time auction, a time period based selection, time-of-daybased selection, geo-location based selection, user preferences basedselection, etc.), and/or any other suitable criteria.

After storing the advertising content at 1142 or setting the advertisingcriteria at 1150, process 1100 can proceed to 1128 of FIG. 11B todetermine whether there are any one or more elements for which contentneeds to be selected and to proceed accordingly as described above.

As can be appreciated, presenting advertising content along with usercaptured and/or pre-existing, non-advertising content can provide manyadvantages to both users and advertisers, in some embodiments. Forexample, if a user has a post about a wedding that the user attended,the user may select to include an automatically selected wedding-relatedadvertisement to be included in an element of the post. Thisadvertisement may be selected on any suitable basis, such as being basedon meta-tag information associated with the post (e.g., that the bridewore a dress from a specific designer), and can contain any suitableadvertising content (e.g., such as an image of an advertisement and alink to a wedding magazine in which the dress is described and/or alocation at which the dress can be purchased), in some embodiments.

As another example, for a post relating to an entertainment event (e.g.,such as a concert, a sporting event, a play, a musical, a circus, etc.),a user may include in elements of the post pictures, reviews, videos,audio, etc. A party involved with the presentation of the event (e.g.,an artist, a promoter, a production company, etc.) may provide contentthat can be selected by the user as pre-existing, non-advertisingcontent and/or as pre-existing, advertising content relating to futureevents or to products (e.g., memorabilia, DVDs, sound tracks, etc.) orservices (e.g., subscriptions, fan clubs, etc.) related to the eventthat can be purchased, in some embodiments.

In some embodiments, once a post is created, or authored, the mechanismscan allow a user to change and/or modify a thumbnail representingcontent contained within an element of the post. For example, in someembodiments, the element can include a selectable input mechanism (e.g.,a selectable icon, and/or any other suitable type of selectable inputelement), selection of which can cause a user interface that allows auser to specify an alternate thumbnail to be opened.

In some embodiments, once a post is created, or authored, the mechanismsmay prepare the post for sharing on the Web. In this preparation, aftera user elects to share the post, a process can automatically generate anHTML Web page that contains the post's “player” embedded in it, in someembodiments. That page may be accessible by only a secure URL link, insome embodiments. The user may also be prompted with an option to emaila link to the page using an email application or client. For example, areal estate broker can authorize a post that describes a property,including a voice recording element that explains why the property is ofparticular interest to a potential purchaser. The broker can then“share” the post by emailing an automatically generated link to thepotential purchaser. The potential purchaser can then click on the linkin the email, and be presented with the post in a browser.

In some embodiments, the mechanisms may enable a user to elect to“share” the post by sending it to any one or more suitable socialnetworks, such as Facebook™, Twitter™, or Pinterest™. In some suchembodiments, a Web-based landing page for the post can be created, athumbnail encapsulating the post can be auto-generated, and thethumbnail can be sent to a user-selected network. In some embodiments,the thumbnail can be associated with a Uniform Resource Locatorassociated with the Web-based landing page. When another user clicks onthe thumbnail or the shared listing, the user can be presented with aWeb page with the full post. In some embodiments, metadata related to asocial networking service (e.g., a name of a social networking service,an icon associated with a social networking service, a link to a socialnetworking service, a username corresponding to a social networkingservice for the creator of the post, and/or any other suitableinformation) can be associated with the post.

FIG. 13 shows an example 1300 of a user interface in which elements arepositioned in connection with fields for performing various functions inaccordance with some embodiments of the disclosed subject matter. Asillustrated, in some embodiments, user interface 1300 can include anasset layout 1301, a search area 1302, a search workspace 1303, asecondary recommendation area 1304, a recommendation factor 1305, and/ora markup language field 1306.

In some embodiments, asset layout 1301 can be any suitable portion ofuser interface 1300 in which different assets can be moved, positioned,and/or interacted with.

In some embodiments, search area 1302 can include any suitable userinterface control(s) for receiving a search query. In some embodiments,results of a search query entered in search area 1302 can cause resultsof the search query to be presented in search workspace 1303. In someembodiments, any suitable items corresponding to the search resultspresented in search workspace 1303 can be selected and/or dragged intoportions of asset layout 1301. In some embodiments, each item associatedwith a search result that is presented in search workspace 1303 caninclude any suitable type of content (e.g., an image, a video, ananimation, an icon, a document, a slideshow, an audio file, a playlistof media content, and/or any other suitable type of content) and/or anindication of or link to any suitable type of service (e.g., a phonenumber that can be called, an address that can be navigated to via anysuitable navigation service, an indication of a transaction processingsystem, a link to a video conferencing meeting, and/or any othersuitable type of indication of or link to a service). In someembodiments, a service can be implemented using any suitable applicationexecuting on a user device, such as an application for sending andreceiving messages, an application for viewing media content (e.g.,music, videos, and/or any other suitable type of media content), anapplication for navigation, an application for video conferencing,and/or any other suitable type of application. In some such embodiments,selection of an item corresponding to a service can cause acorresponding application to be initiated or launched on a user device.Note that, in some embodiments, items included in search workspace 1303can be identified from any suitable location (e.g., local storage ormemory of a device presenting user interface 1300, a private network, avirtual network, from a Web site, and/or from any other suitablelocation) or combination of locations. Additionally, note that, althoughasset layout 1301 is positioned above search area 1302 and searchworkspace 1303 in FIG. 13, in some embodiments, asset layout 1301,search area 1302, and/or search workspace 1303 can each be positioned atany suitable location within user interface 1300.

Additionally, note that, in some embodiments, each item presented insearch workspace 1303 can be presented in connection with an indicator(e.g., an icon, an image, and/or any other suitable type of identifier)that indicates any suitable information related to the item. Forexample, as shown in FIG. 13, each item presented in search workspace1303 can be presented in connection with an icon (e.g., a triangle, asquare, a circle, and/or any other suitable type of icon). In someembodiments, the indicator can include any suitable type of information,such as a location of the item (e.g., that the item is stored in localmemory, that the item is stored on a private network, that the item isstored on a virtual network, that the item is from a Web site, and/orany other suitable location information), a type of asset associatedwith the item (e.g., that the item is digital content, that the itemcorresponds to a service, and/or any other suitable type of asset), atype of content associated with a content item (e.g., that the item is aphoto, that the item is a video, and/or any other suitable contenttype), and/or any other suitable information.

In some embodiments, secondary recommendation area 1304 can be anysuitable search service that generates recommendations of items,content, or services based on assets selected from search workspace1303. In some embodiments, secondary recommendation area 1304 cangenerate recommendations based on any suitable information, such asbased on metadata associated with each of the selected assets fromsearch workspace 1303. In some such embodiments, the metadata canindicate any suitable information, such as a type of content or a typeof service associated with a selected asset, a name of a selected asset,an entity associated with a selected asset (e.g., a name of a creator ofa content item, an entity associated with a selected service, and/or anyother suitable entity), one or more keywords that indicate topics orgenres associated with an asset, and/or any other suitable information.In some embodiments, secondary recommendation area 1304 can generaterecommendations based on prior actions taken by a user viewing and/orusing user interface 1300, such as prior posts generated by the userusing a user account used to view user interface 1300, historicalinformation of previous content viewed by the user, and/or any othersuitable prior actions. Note that, in some embodiments, a user canexplicitly indicate any suitable user preferences that can be used bysecondary recommendation area 1304 to generate recommendations, such asan indication that particular types of content or services are not to berecommended, and/or any other suitable user preferences. Note that, insome embodiments, any asset retrieved by secondary recommendation area1304 and presented as a suggestion can be selected and/or dragged forinclusion in asset layout 1301.

In some embodiments, recommendation factor 1305 can be any suitable userinterface control(s) (e.g., a slider, a drop-down menu, a radio button,a checkbox, and/or any other suitable user interface control) thatallows a user to select a similarity of assets recommended by secondaryrecommendation area 1304 to assets selected within search workspace1303. For example, as shown in FIG. 13, recommendation factor 1305 is aslider that allows a user to select a value from any suitable range. Insome embodiments, input of a relatively lower value can cause secondaryrecommendation area 1304 to identify assets that are relatively moresimilar to assets selected within search workspace 1303. Conversely, insome embodiments, input of a relatively higher value usingrecommendation factor 1305 can cause secondary recommendation area 1304to identify assets that are relatively less similar to assets selectedwithin search workspace 1303.

Note that, in some embodiments, similarity between two assets can bedetermined based on any suitable metric(s), such as based on metadataassociated with each of the assets (e.g., a similarity of topics of theassets, a similarity of content type of each of the assets, and/or basedon any other suitable metadata information). For example, in someembodiments, similarity between two assets can be determined bycalculating a similarity metric that indicates a similarity of the twoassets. Continuing with this example, in some embodiments, thesimilarity metric can be an average or a weighted average of similaritybetween the two assets across any suitable factors (e.g., a similarityof the two assets in topic, a similarity of the two assets in asset typeor content type, a similarity of the two assets in creator of eachasset, and/or any other suitable factors). As another example, in someembodiments, similarity between two assets can be determined using anysuitable machine learning algorithm(s), such as using a trainedclassification algorithm that outputs a classification of whether thetwo assets or similar or dissimilar.

In some embodiments, markup language field 1306 can be used to allow auser to input any suitable commands that can be executed on asset layout1301 using any suitable markup language or scripting language (e.g.,Python, Angular.js, HTML, XML, and/or any other suitable markup languageor scripting language) or a custom markup or scripting language that canbe interpreted by a server associated with presentation of userinterface 1300. In some embodiments, a command entered in markuplanguage field 1306 can include any suitable reference to any suitableelement included in asset layout 1301. In some embodiments, a particularelement can be referenced in any suitable manner, such as by indicatingan address or position of the element within asset layout 1301. In someembodiments, a command entered in markup language field 1306 can causeany suitable action to be performed on a corresponding element, such aschanging a position of the element within asset layout 1301, changing avisual characteristic of the element within asset layout 1301 (e.g.,changing a size, color, and/or orientation of the element, and/or anyother suitable visual characteristic), and/or any other suitable action.

Note that, in some embodiments, any suitable artificial intelligence ormachine learning techniques can be integrated with commands received viamarkup language field 1306. For example, in some embodiments, anysuitable image or video processing technique(s) can be used to identifycontent of an image or video (e.g., recognition of a particular person,recognition of particular objects, and/or any other suitable contentidentification). As another example, in some embodiments, any suitablenatural language processing techniques (e.g., using an API associatedwith IBM Watson™, and/or any other suitable natural language processingtechniques) can be used for any suitable purpose, such as sentimentanalysis, subject matter priority, and/or any other suitable purpose.

Additionally, note that, as described above in connection with FIGS.11A, 11B, and/or 11C, asset layout 1301 can be stored in any suitablemanner. For example, in some embodiments, asset layout 1301 can bestored as an image. As another example, in some embodiments, assetlayout 1301 can be stored in connection with a URL such that assetlayout 1301 can be shared with and/or accessed by other user devicesusing the URL. Note that, in some embodiments, in an instance in whichasset layout 1301 is created using a first user device and in whichasset layout 1301 is shared with a second user device, the second userdevice can view elements and/or interact with elements included in assetlayout 1301 in any suitable manner. For example, in an instance in whichan element included in asset layout 1301 corresponds to a particularservice, the second user device can access the service by selecting thecorresponding element.

Additionally, note that, in some embodiments, asset layout 1301 can beassociated with a particular user account. In some embodiments, alayout, elements included in a layout, and/or assets included in alayout can be associated with a transactional cost. For example, in someembodiments, layout, elements, and/or assets can be associated with aviewing fee, and a user associated with the user account can be chargedthe viewing fee for viewing the layout, elements, and/or assets. Asanother example, in some embodiments, the user associated with the useraccount can be paid when other users view the layout, elements, and/orassets. In some embodiments, payment of fees can be implements inconnection with the analytics shown in and described above in connectionwith FIG. 12. In some embodiments, transactions can be implemented usingany suitable transaction systems or services, such as any suitableencrypted and distributed transactional system(s) (e.g., a blockchain, adistributed ledger, and/or any other suitable transactional system(s)).In some embodiments, a transactional system can be implemented on aserver associated with the system described herein. Alternatively, insome embodiments, a transactional system or service can be accessed viaa corresponding API.

In some embodiments, a method for creating a layout of digital contentis provided, the method comprising: receiving at a hardware processor aselection of a base form for the layout of digital content; based on theselection of the base form, presenting using the hardware processor thelayout of digital content on a display, wherein the layout of digitalcontent includes a plurality of elements, each element corresponds to aregion of the layout of digital content, and each element can beassociated with a piece of digital content; receiving a selection of oneof the plurality of elements; receiving a selection of a digital contenttype to be associated with the selection of the one of the plurality ofelements; based on the selection of the digital content type and on acharacteristic of the layout of digital content, presenting a pluralityof pieces of digital content that can be associated with the selectionof the one of the plurality of elements; receiving a selection of one ofthe plurality of pieces of digital content that can be associated withthe selection of the one of the plurality of elements; retrieving theselection of the one of the plurality of pieces of digital content;converting the selection of the one of the plurality of pieces ofdigital content from a first form to a second form; storing theselection of the one of the plurality of pieces of digital content inthe second form as stored content; and linking the stored content andthe selection of the one of the plurality of elements such that when theselection of the one of the plurality of elements is selected forpresentation, the stored content will be accessed.

In some embodiments, a system for creating a layout of digital contentis provided, the system comprising: a hardware processor that isprogrammed to: receive a selection of a base form for the layout ofdigital content; based on the selection of the base form, present thelayout of digital content on a display, wherein the layout of digitalcontent includes a plurality of elements, each element corresponds to aregion of the layout of digital content, and each element can beassociated with a piece of digital content; receive a selection of oneof the plurality of elements; receive a selection of a digital contenttype to be associated with the selection of the one of the plurality ofelements; based on the selection of the digital content type and on acharacteristic of the layout of digital content, present a plurality ofpieces of digital content that can be associated with the selection ofthe one of the plurality of elements; receive a selection of one of theplurality of pieces of digital content that can be associated with theselection of the one of the plurality of elements; retrieve theselection of the one of the plurality of pieces of digital content;convert the selection of the one of the plurality of pieces of digitalcontent from a first form to a second form; store the selection of theone of the plurality of pieces of digital content in the second form asstored content; and link the stored content and the selection of the oneof the plurality of elements such that when the selection of the one ofthe plurality of elements is selected for presentation, the storedcontent will be accessed.

In some embodiments, non-transitory computer-readable media containingcomputer executable instructions that, when executed by a processor,cause the processor to perform a method for creating a layout of digitalcontent are provided, the method comprising: receiving a selection of abase form for the layout of digital content; based on the selection ofthe base form, presenting the layout of digital content on a display,wherein the layout of digital content includes a plurality of elements,each element corresponds to a region of the layout of digital content,and each element can be associated with a piece of digital content;receiving a selection of one of the plurality of elements; receiving aselection of a digital content type to be associated with the selectionof the one of the plurality of elements; based on the selection of thedigital content type and on a characteristic of the layout of digitalcontent, presenting a plurality of pieces of digital content that can beassociated with the selection of the one of the plurality of elements;receiving a selection of one of the plurality of pieces of digitalcontent that can be associated with the selection of the one of theplurality of elements; retrieving the selection of the one of theplurality of pieces of digital content; converting the selection of theone of the plurality of pieces of digital content from a first form to asecond form; storing the selection of the one of the plurality of piecesof digital content in the second form as stored content; and linking thestored content and the selection of the one of the plurality of elementssuch that when the selection of the one of the plurality of elements isselected for presentation, the stored content will be accessed.

It should be understood that at least some of the above described blocksof the processes of FIGS. 10, 11A, 11B, and 11C can be executed orperformed in any order or sequence not limited to the order and sequenceshown and described in the figures. Also, some of the above blocks ofthe processes of FIGS. 10, 11A, 11B, and 11C can be executed orperformed substantially simultaneously where appropriate or in parallelto reduce latency and processing times.

In some embodiments, any suitable computer readable media can be usedfor storing instructions for performing the functions and/or processesdescribed herein. For example, in some embodiments, computer readablemedia can be transitory or non-transitory. For example, non-transitorycomputer readable media can include media such as magnetic media (suchas hard disks, floppy disks, etc.), optical media (such as compactdiscs, digital video discs, Blu-ray discs, etc.), semiconductor media(such as flash memory, electrically programmable read-only memory(EPROM), electrically erasable programmable read-only memory (EEPROM),etc.), any suitable media that is not fleeting or devoid of anysemblance of permanence during transmission, and/or any suitabletangible media. As another example, transitory computer readable mediacan include signals on networks, in wires, conductors, optical fibers,circuits, any suitable media that is fleeting and devoid of anysemblance of permanence during transmission, and/or any suitableintangible media.

Although the invention has been described and illustrated in theforegoing illustrative embodiments, it is understood that the presentdisclosure has been made only by way of example, and that numerouschanges in the details of implementation of the invention can be madewithout departing from the spirit and scope of the invention, which islimited only by the claims that follow. Features of the disclosedembodiments can be combined and rearranged in various ways.

What is claimed is:
 1. A method for creating a layout of digital assets,comprising: receiving, at a hardware processor, a user selection of abase form for the layout of digital assets; based on the user selectionof the base form, presenting, using the hardware processor, the layoutof digital assets on a display, wherein the layout of digital assetsincludes a plurality of elements, and wherein each of the plurality ofelements corresponds to a different region of the layout of digitalassets, and wherein each of the plurality of elements can be associatedwith a different digital asset; receiving a selection of a digital assetfrom a group of available digital assets as a selected digital asset tobe associated with one of the plurality of elements of the layout ofdigital assets; converting the selected digital asset from a first formto a second form so that the second form of the selected digital assetcan be presented in an image that represents the layout of digitalassets; linking the second form of the selected digital asset and theone of the plurality of elements such that when the one of the pluralityof elements is selected for presentation, the second form of theselected digital asset will be accessed; causing a representation of thedigital asset to be presented in the layout of digital assets; causingthe image that represents the layout of digital assets to be created,wherein the image is associated with a Uniform Resource Locator (URL)that indicates a location of the image; and in response to determiningthat the URL has been selected on a user device, causing the image to bepresented on the user device.
 2. The method of claim 1, furthercomprising: receiving a search query via a search input in a searchregion portion of the user interface; causing a plurality of searchresults to be presented in the search region portion of the userinterface, wherein each of the plurality of search results correspondsto a digital asset, and wherein each of the plurality of elements isselectable; receiving a selection of one of the search results in theplurality of search results, wherein the selected digital assetcorresponds to selected search result.
 3. The method of claim 2, furthercomprising: causing a second search portion of the user interface to bepresented; identifying a plurality of second search results based on theselected search result, wherein each of the plurality of second searchresults corresponds to a digital asset, and wherein each of theplurality of second search results is selected based on a similarity tothe selected search result; and causing the plurality of second searchresults to be presented in the second search portion of the userinterface.
 4. The method of claim 3, wherein the second search portionof the user interface includes an input for receiving an indication of adegree of similarity between each of the second search results and theselected search result.
 5. The method of claim 1, wherein the userinterface includes a markup language field, wherein the markup languagefield receives a command that comprises a reference to an element in theplurality of elements included in the layout of digital assets and anaction to be performed on the referenced element in the plurality ofelements.
 6. The method of claim 5, further comprising performing theaction on the referenced element by interpreting the command.
 7. Themethod of claim 1, wherein the digital asset is a service associatedwith an application executing on the user device.
 8. The method of claim1, further comprising receiving a payment in connection with a useraccount of the user device in response to determining that the digitalasset has been selected.
 9. A system for creating a layout of digitalassets, the system comprising: a memory; and a hardware processor that,when executing computer-executable instructions stored in the memory, isconfigured to: receive a user selection of a base form for the layout ofdigital assets; based on the user selection of the base form, presentthe layout of digital on a display, wherein the layout of digital assetsincludes a plurality of elements, and wherein each of the plurality ofelements corresponds to a different region of the layout of digitalassets, and wherein each of the plurality of elements can be associatedwith a different digital asset; receive a selection of a digital assetfrom a group of available digital assets as a selected digital asset tobe associated with one of the plurality of elements of the layout ofdigital assets; convert the selected digital asset from a first form toa second form so that the second form of the selected digital asset canbe presented in an image that represents the layout of digital assets;link the second form of the selected digital asset and the one of theplurality of elements such that when the one of the plurality ofelements is selected for presentation, the second form of the selecteddigital asset will be accessed; cause a representation of the digitalasset to be presented in the layout of digital assets; cause the imagethat represents the layout of digital assets to be created, wherein theimage is associated with a Uniform Resource Locator (URL) that indicatesa location of the image; and in response to determining that the URL hasbeen selected on a user device, cause the image to be presented on theuser device.
 10. The system of claim 9, wherein the hardware processoris further configured to: receive a search query via a search input in asearch region portion of the user interface; cause a plurality of searchresults to be presented in the search region portion of the userinterface, wherein each of the plurality of search results correspondsto a digital asset, and wherein each of the plurality of elements isselectable; receive a selection of one of the search results in theplurality of search results, wherein the selected digital assetcorresponds to selected search result.
 11. The system of claim 10,wherein the hardware processor is further configured to: cause a secondsearch portion of the user interface to be presented; identify aplurality of second search results based on the selected search result,wherein each of the plurality of second search results corresponds to adigital asset, and wherein each of the plurality of second searchresults is selected based on a similarity to the selected search result;and cause the plurality of second search results to be presented in thesecond search portion of the user interface.
 12. The system of claim 11,wherein the second search portion of the user interface includes aninput for receiving an indication of a degree of similarity between eachof the second search results and the selected search result.
 13. Thesystem of claim 9, wherein the user interface includes a markup languagefield, wherein the markup language field receives a command thatcomprises a reference to an element in the plurality of elementsincluded in the layout of digital assets and an action to be performedon the referenced element in the plurality of elements.
 14. The systemof claim 13, wherein the hardware processor is further configured toperform the action on the referenced element by interpreting thecommand.
 15. The system of claim 9, wherein the digital asset is aservice associated with an application executing on the user device. 16.The system of claim 9, wherein the hardware processor is furtherconfigured to receive a payment in connection with a user account of theuser device in response to determining that the digital asset has beenselected.
 17. A non-transitory computer-readable medium containingcomputer-executable instructions that, when executed by a processor,cause the processor to perform a method for creating a layout of digitalassets, the method comprising: receiving a user selection of a base formfor the layout of digital assets; based on the user selection of thebase form, presenting the layout of digital assets on a display, whereinthe layout of digital assets includes a plurality of elements, andwherein each of the plurality of elements corresponds to a differentregion of the layout of digital assets, and wherein each of theplurality of elements can be associated with a different digital asset;receiving a selection of a digital asset from a group of availabledigital assets as a selected digital asset to be associated with one ofthe plurality of elements of the layout of digital assets; convertingthe selected digital asset from a first form to a second form so thatthe second form of the selected digital asset can be presented in animage that represents the layout of digital assets; linking the secondform of the selected digital asset and the one of the plurality ofelements such that when the one of the plurality of elements is selectedfor presentation, the second form of the selected digital asset will beaccessed; causing a representation of the digital asset to be presentedin the layout of digital assets; causing the image that represents thelayout of digital assets to be created, wherein the image is associatedwith a Uniform Resource Locator (URL) that indicates a location of theimage; and in response to determining that the URL has been selected ona user device, causing the image to be presented on the user device. 18.The non-transitory computer-readable medium of claim 17, wherein themethod further comprises: receiving a search query via a search input ina search region portion of the user interface; causing a plurality ofsearch results to be presented in the search region portion of the userinterface, wherein each of the plurality of search results correspondsto a digital asset, and wherein each of the plurality of elements isselectable; receiving a selection of one of the search results in theplurality of search results, wherein the selected digital assetcorresponds to selected search result.
 19. The non-transitorycomputer-readable medium of claim 18, wherein the method furthercomprises: causing a second search portion of the user interface to bepresented; identifying a plurality of second search results based on theselected search result, wherein each of the plurality of second searchresults corresponds to a digital asset, and wherein each of theplurality of second search results is selected based on a similarity tothe selected search result; and causing the plurality of second searchresults to be presented in the second search portion of the userinterface.
 20. The non-transitory computer-readable medium of claim 19,wherein the second search portion of the user interface includes aninput for receiving an indication of a degree of similarity between eachof the second search results and the selected search result.
 21. Thenon-transitory computer-readable medium of claim 17, wherein the userinterface includes a markup language field, wherein the markup languagefield receives a command that comprises a reference to an element in theplurality of elements included in the layout of digital assets and anaction to be performed on the referenced element in the plurality ofelements.
 22. The non-transitory computer-readable medium of claim 21,wherein the method further comprises performing the action on thereferenced element by interpreting the command.
 23. The non-transitorycomputer-readable medium of claim 17, wherein the digital asset is aservice associated with an application executing on the user device. 24.The non-transitory computer-readable medium of claim 17, wherein themethod further comprises receiving a payment in connection with a useraccount of the user device in response to determining that the digitalasset has been selected.